﻿namespace WLFramework.Security
{
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;

    public class SecurityConfiguration
    {
        private Encoding encoding = Encoding.UTF8;

        public void RegisterIV(string name, string iv)
        {
            Shield.AssertNotNull(ref name, "name");
            Shield.AssertNotNull(ref iv, "iv");
            this.RegisterIV(name, encoding.GetBytes(iv));
        }

        public void RegisterIV(string name, byte[] iv)
        {
            Shield.AssertNotNull(ref name, "name");
            Shield.AssertNotNull(ref iv, "iv");
        }

        public void RegisterKey(string name, string key)
        {
            Shield.AssertNotNull(ref name, "name");
            Shield.AssertNotNull(ref key, "key");
        }

        public void RegisterKey(string name, byte[] key)
        {
            Shield.AssertNotNull(ref name, "name");
            Shield.AssertNotNull(ref key, "key");
        }

        public byte[] GetKey(string name)
        {
            Shield.AssertNotNull(ref name, "name");
            return null;
        }

        public byte[] GetIV(string name)
        {
            Shield.AssertNotNull(ref name, "name");
            return null;
        }
    }
}
